#pragma once
#include <iostream>
#include <string>
#include <sstream>
using namespace std;

template<class T>
class NodoSimple
{
private:
	NodoSimple* siguiente;
	T* info;

public:
	NodoSimple(NodoSimple*, T *);
	virtual ~NodoSimple();

	virtual NodoSimple* getSigNodo();
	virtual T* getInfo();
	void setSigNodo(NodoSimple *);
	void setInfo(T *);
};

template<class T>
NodoSimple<T>::NodoSimple(NodoSimple<T>* siguiente, T* inf): siguiente(siguiente), info(inf)
{}

template<class T>
NodoSimple<T>::~NodoSimple(){}

template<class T>
NodoSimple<T>* NodoSimple<T>::getSigNodo()
{
	return siguiente;
}

template<class T>
T* NodoSimple<T>::getInfo()
{
	return info;
}

template<class T>
void NodoSimple<T>::setSigNodo(NodoSimple<T> * nod){

	siguiente=nod;


}

template<class T>
void NodoSimple<T>::setInfo(T * inf){

	info=inf;

}

